$(function(){
  const layer = layui.layer
  const form = layui.form
  // 1初始化列表
  initArtCateList()
  function initArtCateList() {
    $.ajax({
      method:'GET',
      url:'/my/article/cates',
      success:function(res){
        // console.log(res)
        if(res.status !== 0) return layer.msg(res.message)
        // layer.msg(res.message)

        // 调用模板引擎
        let htmlStr = template('tpl-artCate',res)
        $('tbody').html(htmlStr)
      }
    })
  }

  // 2.新增分类类别
  var indexAdd = null
  $('#btnAddCate').on('click',function(){
    indexAdd  = layer.open({
      type:1,
      title: '添加文章类别',
      content:$('#dialog-add').html(),
      area: ['500px', '250px']
    });     
  })

  // 3.添加类别 表单提交，需要通过事件委托
  $('body').on('submit', '#form-add', function (e) {
    e.preventDefault()
    const data = $(this).serialize()
    
    $.ajax({
      method:'POST',
      url:'/my/article/addcates',
      data,
      success: function (res) {
        console.log(res)
        if (res.status !== 0) return layer.msg(res.message)
        
        layer.close(indexAdd)
        initArtCateList()
        layer.msg(res.message)
      }
    })
  })

  // 4.删除分类 事件委托
  $('tbody').on('click', '#btnDel', function () {
    const id = $(this).attr('data-id')
    // console.log(id)

    layer.confirm('确认要删除分类?', {icon: 3, title:'删除分类'}, function(index){
      $.ajax({
        method: 'GET',
        url: `/my/article/deletecate/${id}`,
        success: function (res) {
          if (res.status !== 0) return layer.msg(res.message)
          layer.msg(res.message)
          initArtCateList()
        }
      })
      
      layer.close(index);
    });
  })
  
  // 5.编辑分类 事件委托
  let indexEdit = null
  $('tbody').on('click', '#btnEdit', function () {
    indexEdit = layer.open({
      type:1,
      title: '添加文章类别',
      content:$('#dialog-edit').html(),
      area: ['500px', '250px']
     })
    
    // 发起ajax请求
    const id = $(this).attr('data-id')
    $.ajax({
      method: 'GET',
      url: `/my/article/cates/${id}`,
      success: function (res) {
        // console.log(res)
        if (res.status !== 0) return layer.msg(res.message)
        // 快速赋值
        form.val('formEdit',res.data)
      }
    })
  })

  // 6.编辑表单提交，事件委托给body
  $('body').on('submit', '#form-edit', function (e) {
    e.preventDefault()
    const data = $(this).serialize()

    $.ajax({
      method: 'POST',
      url: '/my/article/updatecate',
      data,
      success: function (res) {
        if (res.status !== 0) return layer.msg(res.message)
        layer.close(indexEdit)
        layer.msg(res.message)
        initArtCateList() 
      }
    })
  })
})